// 学生分数系统60分以上及格60分以下不及格
package main

import (
	"bufio"
	"fmt"
	"log"
	"os"
	"reflect"
	"strconv"
	"strings"
)

func main() {
	fmt.Println("请输入成绩:")
	reader := bufio.NewReader(os.Stdin)
	//go语言中方法可以返回多个值，这点跟别的编程语言差别很大
	input, inputError := reader.ReadString(byte('\n'))
	//如果不想处理error 可以用 _ 代替
	if inputError != nil {
		fmt.Println("读取输入分数时报错,错误为:", inputError)
		log.Fatal(inputError) //报告错误并停止运行
	}
	println("输入的数字为", input, "类型为", reflect.TypeOf(input))
	grade, changeError := strconv.ParseInt(strings.Trim(input, "\n"), 10, 64)
	if changeError != nil {
		println("字符串转int失败")
		log.Fatal(changeError) //报告错误并停止运行
	}
	if grade == 100 {
		fmt.Println("完美")
	} else if grade >= 60 {
		println("及格了")
	} else {
		println("没有及格")
	}
	fmt.Println(input)
}
